home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Graphics Plus
/
Graphics Plus.iso
/
general
/
modelers
/
geomview
/
source.lha
/
Geomview
/
src
/
bin
/
tackdown
/
tackdown.main.c
< prev
Wrap
C/C++ Source or Header
|
1993-03-10
|
1KB
|
59 lines
#include <stdio.h>
#include "geom.h"
#include "streampool.h"
#include "forms.h"
#include "panel.h"
static Pool *standardIn, *standardOut;
main() {
foreground();
standardIn = PoolStreamTemp(NULL, stdin, 0, NULL);
standardOut = PoolStreamTemp(NULL, stdout, 1, NULL);
create_the_forms();
fl_set_button(worldButton, 1);
fl_show_form(MainForm, FL_PLACE_SIZE, TRUE, "Tack Down");
while(1) fl_do_forms();
}
void TransButtonProc(FL_OBJECT *o, long val) {
char buf[256];
Geom *g;
Transform t;
printf("(write geometry - targetgeom bare)");
printf("(write transform - targetgeom %s)",
fl_get_button(worldButton) ? "world" : "universe");
fflush(stdout);
g = GeomFLoad(stdin, NULL);
TransStreamIn(standardIn, NULL, t);
GeomTransform(g, t);
printf("(freeze allcams)");
printf("(geometry targetgeom {");
GeomFSave(g, stdout, NULL);
printf("})");
printf("(xform-set targetgeom ");
fputtransform(stdout, 1, &TM_IDENTITY[0][0], 0);
printf(")");
printf("(redraw allcams)");
fflush(stdout);
fl_set_button(TransButton, 0);
GeomDelete(g);
}
void QuitButtonProc(FL_OBJECT *o, long val) {
exit(0);
}